using System.ComponentModel.DataAnnotations;
using Snowflake.Core;

namespace LowCoding.Dto.Sys
{
    /// <summary>
    /// 角色表
    /// </summary>
    public class SysRoleInput
    {
        /// <summary>
        /// 角色ID
        /// </summary>
        /// <example></example>
        public string Id { get; set; } = new IdWorker(1, 1).NextId().ToString();

        /// <summary>
        /// 角色代码
        /// </summary>
        /// <example></example>
        [Required(ErrorMessage = "角色代码不能为空")]
        [MaxLength(16, ErrorMessage = "角色代码输入字符过长")]
        public string RleCode { get; set; }

        /// <summary>
        /// 角色名称
        /// </summary>
        /// <example></example>
        [Required(ErrorMessage = "角色名称不能为空")]
        [MaxLength(16, ErrorMessage = "角色名称输入字符过长")]
        public string RleName { get; set; }

        /// <summary>
        /// 是否管理员角色
        /// </summary>
        /// <example></example>
        public string RleIsp { get; set; }

        /// <summary>
        /// 序号
        /// </summary>
        /// <example>0</example>
        public int RleOrder { get; set; }

        /// <summary>
        /// 角色企业类型
        /// </summary>
        /// <example></example>
        public string RleType { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        /// <example></example>
        [MaxLength(300, ErrorMessage = "备注输入字符过长")]
        public string Remark { get; set; }
    }
}